package com.example.ibsp_demo.mapper.content;

import com.example.ibsp_demo.pojo.entity.content.Favorite; // 替换为实际包路径
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface FavoriteMapper {

    // 根据主键查询
    Favorite selectByFid(Integer fid);

    // 根据用户ID查询收藏列表（分页）
    List<Favorite> selectByUid(Integer uid);

//    // 判断用户是否已收藏某内容（去重）
Favorite selectByUidAndCtid(@Param("uid") Integer uid, @Param("ctid") Integer ctid);


    // 根据内容ID查询所有收藏记录（统计收藏数）
    List<Favorite> selectByCtid(Integer ctid);

    // 收藏内容
    int insert(Favorite favorite);

    // 根据主键取消收藏
    int deleteByFid(Integer fid);

    // 根据用户和内容取消收藏（更直观）
    int deleteByUidAndCtid(Integer uid, Integer ctid);

    // 统计内容的收藏数
    Integer countByCtid(Integer ctid);
}